1. Field of the Invention
This invention relates to an external time reference for a multicomputer complex and, in particular, to an external time reference with dynamic steering.
2. Description of the Related Art
Multicomputer complexes having computers that are widely separated (e.g., by distances of up to several kilometers) are relatively common in the art. The signal propagation delay between individual computers typically exceeds the period of the high-frequency time-of-day (TOD) clocks which are used by the computers to measure time intervals and to time-stamp events. TOD clocks for high-performance computers are typically driven at a frequency of several tens of megahertz. Accordingly, maintaining absolute synchronism between such high-frequency clocks is difficult and often not attempted. It is nevertheless desirable, however, for such a multicomputer complex to have synchronized lower-frequency clock signals for such purposes as cross-system time-stamping and the like. Such clock signals may have frequencies on the order of several kilohertz.
What are particularly desirable are TOD clocks that accomplish both objectives simultaneously. That is, clocks that have a high resolution for internal time-stamping purposes (i.e., within a particular computer of the complex) but are also synchronized on a coarser scale with other clocks in the complex for cross-system time-stamping. This may be implemented by providing each computer with a slave TOD clock which is phase-locked to a system-wide clock which runs at a submultiple of the TOD clock frequency.
Synchronized clock signals of the type referred to above are typically implemented by providing one or more clock sources at each computer location and phase-locking each clock source to a consensus signal derived from the other clock sources. Systems containing 3f+1 such mutually coupled clock sources are capable of tolerating f individual points of failure and are disclosed in such references as Fletcher et al., U.S. Pat. No. 3,900,741, Smith et al. U.S. Pat. No. 4,239,982, and the copending applications of T. B. Smith, Ser. No. 262,416, filed Oct. 25, 1988, entitled "Synchronized Fault Tolerant Clocks for Multiprocessor Systems", now abandoned and of L. H. Appelbaum et al., Ser. No. 392,812, filed Aug. 11, 1989, entitled "Fault-Tolerant Clock for Multicomputer Complex", both of which applications are owned by the assignee of the present application.
Of particular interest are quad oscillator systems consisting of four mutually coupled clock sources which tolerate any single point of failure. Thus, the copending applications referred to above disclose quad systems in which two clock sources are associated with each of two physically separated external time reference units. The external time reference units are physically separated to reduce the likelihood that a common source of failure will affect both units simultaneously. Each computer receives two synchronized TOD clock signals, one from each unit, so that it may continue to receive a TOD clock signal for such purposes as time-stamping even if one of the clock sources or external time reference units should fail.
The quad oscillators of the clock sources, which are voltage controlled, are inherently less precise than a fixed-frequency oscillator. Accordingly, in order to increase the precision of the quad oscillator systems described in the copending applications referred to above, the quad oscillators may be "steered" to a higher-precision fixed-frequency time reference. Thus, as disclosed in the copending application of L. H. Appelbaum et al., the clock signal generated by one of the four mutually coupled oscillators is used to increment a TOD counter, while a higher-precision reference oscillator is likewise used to increment a reference counter. Periodically, the two counts are compared to derive an error signal, from which a steering correction signal is generated and supplied to each of the four oscillators, together with any other correction signals generated by the individual phase-lock loops (PLLs).
In the system described in the copending application of Appelbaum et al., the steering signal applied to the individual oscillators is of fixed magnitude, but of a sign determined by the discrepancy between the TOD count and the reference count. This results in a system in which the TOD time as indicated by the TOD count tracks the reference time in a sawtooth fashion rather than approaching the reference time asymptotically. It would be desirable to have an external time reference system in which the TOD time tracked the reference time more closely, despite deviations in individual oscillators from their design specifications.